Radio network controller with IP mapping table

ABSTRACT

Devices, systems, and methods are disclosed for seamlessly routing data to mobile devices that undergo handovers from one access point to another. A controller, such as a RNC or BSC, includes logic to map the locations of mobile devices that are connected to various access points on one or more networks. The access points include base stations, Node Bs, wireless LAN, etc., and incorporate or are coupled to network agents. The network agent reports the location of the mobile device to the controller via a plurality of means such as over an IP network, a powerline network, or a satellite network. Using the database, or IP mapping table, having the most current locations of all the mobile devices under its domain or area, the controller can route data packets to the mobile devices using the most effective routing paths.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to mobile networks. In particular, the present invention relates to providing Internet Protocol (IP) mobility routing capabilities on a radio network controller (RNC).

2. Background of the Invention

In modern cellular networks, Internet Protocol (IP) addressing is being used more extensively than ever before. Mobile devices are equipped with not only cellular transceivers but also data MODEMs such as General Packet Radio Service (GPRS) transceivers, Wi-Fi transceivers, etc. Further, additional network elements such as those that are part of an IP Multimedia System (IMS) use IP addressing to transmit data packets across network elements.

However, these network elements are not being used to the fullest potential. A UMTS Terrestrial Radio Access Network (UTRAN) includes, inter alia, a plurality of access points such as Node Bs (equivalent to GSM Base Transceiver Stations) that are controlled by a controller such as a Radio Network Controller (RNC). The RNC interfaces with other network elements such as a Mobile Switching Center (MSC), and gateways enabling communication with IP networks, such as G-GSN and S-GSN. The problem arises when a mobile device moves from one area serviced by one access point/Node B to another area served by another access point. A seamless handover from one radio to another requires an uninterrupted flow of data to and from the mobile device. Today, seamless handovers require tremendous network resources, and under heavy use, data packets can be lost and connections dropped because existing RNCs are not equipped to re-route data packets as they are performing handovers. Although MSCs perform handover duties, MSCs are not directly involved with base stations/Node Bs, and the precise updated network location of the mobile device is not known to all the intermediary elements. Consequently, data from a source network element is routed across several additional elements before it ever reaches the mobile device.

The problem is compounded by the addition of access points in the form of Wireless Local Area Network (WLAN) hotspots. Since modern mobile devices are able to communicate with different types of networks, additional processing is required to bring awareness of the new location to the network elements routing the data. At present, there is no efficient method for the core network elements to be made aware of the location of the mobile device such that data is transferred effectively to the mobile device via the new access point.

Therefore, what is needed is a device, system, or method to seamlessly route data packets to mobile devices that traverse multiple access points.

SUMMARY OF THE INVENTION

The present invention solves the above problems by enabling a controller, such as a RNC or BSC, to map the locations of mobile devices that are connected to various access points on one or more networks. The access points include base stations, Node Bs, wireless LAN, etc., and incorporate or are coupled to network agents. The network agent reports the location of the mobile device to the controller via a plurality of means such as over an IP network, a powerline network, or a satellite network. Using the database, or IP mapping table, having the most current locations of all the mobile devices under its domain or area, the controller can route data packets to the mobile devices using the most effective routing paths.

In one exemplary embodiment, the present invention is a controller for routing a data packet to a mobile device on a network, including a processor, a memory in communication with the processor, the memory including a database containing an Internet Protocol (IP) address associated with a corresponding mobile device, a transceiver in communication with the processor, and routing logic on the memory for receiving a network location from a network agent in communication with the mobile device, updating the database with the network location, and routing a data packet to the mobile device via the network location. The controller may be a radio network controller (RNC) or a Base Station Controller (BSC). The network agent is coupled to an access point enabling the mobile device to access the network. The access point is any one of a Wireless Local Area Network (WLAN) router and a Node B. The controller further performs handovers between the WLAN router and the Node B, or between several WLAN routers or Node Bs. The network agent transmits the network location to the controller via a powerline or satellite network.

In another exemplary embodiment, the present invention is a system for routing a data packet to a mobile device on a network, including a radio network controller, a plurality of access points in communication with the radio network controller, the plurality of access points including at least a Node B and a Wireless Local Area Network (WLAN) router, a network agent coupled to each of the plurality of access points, and a mobile device in communication with one of the plurality of access points, wherein the radio network controller includes a database of network locations for the mobile device, the database including an Internet Protocol (IP) address of the mobile device, a unique identifier of the mobile device, and a network address of access point in communication with the mobile device, the network address being provided to the radio network controller from the network agent, and wherein the radio network controller comprises routing logic to update the database with the network address received from the network agent and route an incoming data packet to the mobile device based on the network address of the access point in communication with the mobile device. The system further includes a Serving GPRS Support Node (SGSN) in communication with the RNC, wherein the network location is transmitted to the RNC via the SGSN.

In yet another exemplary embodiment, the present invention is a method for routing a data packet to a mobile device on a network, including storing an Internet Protocol (IP) address and location information for a mobile device on the network, receiving a network location from a network agent in communication with the mobile device, the network agent being co-located with an access point providing a network access to the mobile device, updating the stored location information for the mobile device with the network location of the access point, receiving a request to transfer a data packet to the mobile device, and routing the data packet to the mobile device via the updated location information. The routing further comprises forwarding the network location of the access point to a source of the request to transfer the data packet.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a system for routing a data packet to a mobile device on a network, according to an exemplary embodiment of the present invention.

FIG. 2 shows a system for routing a data packet across a plurality of networks, according to an exemplary embodiment of the present invention.

FIG. 3 shows the components of a controller, according to an exemplary embodiment of the present invention.

FIGS. 4A and 4B show a mobile device, according to an exemplary embodiment of the present invention.

FIG. 5 shows a method for routing a data packet to a mobile device on a network, according to an exemplary embodiment of the present invention.

FIG. 6 shows an access point communicating with a controller across an IP network, according to an exemplary embodiment of the present invention.

FIG. 7 shows an access point communicating with a controller across a powerline network, according to an exemplary embodiment of the present invention.

FIG. 8 shows an access point communicating with a controller across a satellite network, according to an exemplary embodiment of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

The present invention presents a novel technique for routing data packets in an IP mobility network. A radio network controller or base station controller includes a database or mapping table that tracks the network locations of mobile devices that are connected to various access points on one or more networks. The access points include base stations, Node Bs, wireless LAN, etc., and incorporate or are coupled to network agents. The network agent reports the location of the mobile device to the controller via a plurality of means such as over an IP network, a powerline network, or a satellite network. Using the database, or IP mapping table, having the most current locations of all the mobile devices under its domain or area, the controller can route data packets to the mobile devices using the most effective routing paths. In conjunction with providing handover services to the mobile device moving from one access point to another, the controller also creates routing paths by informing other network entities of the most current network location of the mobile device. The handover, as well as the routing of the data packet is transparent to a user of the mobile device.

As used herein and throughout this disclosure, the term As used herein and throughout this disclosure, the term “mobile device” refers to any electronic device capable of communicating across a mobile network. A mobile device may have a processor, a memory, a transceiver, an input, and an output. Examples of such devices include cellular telephones, personal digital assistants (PDAs), portable computers, etc. The memory stores applications, software, or logic. Examples of processors are computer processors (processing units), microprocessors, digital signal processors, controllers and microcontrollers, etc. Examples of device memories that may comprise logic include RAM (random access memory), flash memories, ROMS (read-only memories), EPROMS (erasable programmable read-only memories), and EEPROMS (electrically erasable programmable read-only memories). A transceiver includes but is not limited to cellular, GPRS, Bluetooth, and Wi-Fi transceivers.

“Logic” as used herein and throughout this disclosure, refers to any information having the form of instruction signals and/or data that may be applied to direct the operation of a processor. Logic may be formed from signals stored in a device memory. Software is one example of such logic. Logic may also be comprised by digital and/or analog hardware circuits, for example, hardware circuits comprising logical AND, OR, XOR, NAND, NOR, and other logical operations. Logic may be formed from combinations of software and hardware. On a network, logic may be programmed on a server, or a complex of servers. A particular logic unit is not limited to a single logical location on the network.

Mobile devices communicate with each other and with other elements via a network, for instance, a cellular network. A “network” can include broadband wide-area networks, local-area networks, and personal area networks. Communication across a network can be packet-based or use radio and frequency/amplitude modulations using appropriate analog-digital-analog converters and other elements. Examples of radio networks include UMTS, GSM, CDMA, WLAN and BLUETOOTH® networks, with communication being enabled by transceivers. A network typically includes a plurality of elements such as servers that host logic for performing tasks on the network. Servers may be placed at several logical points on the network. Servers may further be in communication with databases and can enable communication devices to access the contents of a database. For instance, Mobile Switching Center (MSC) maintains a database of Radio Access Networks (RAN), wherein each RAN is operated by a controller having a database of every radio access point (Node B or a WLAN hotspot). An example of a controller is a Radio Network Controller, which carries out radio resource management, some mobility management functions and is the point where encryption is performed before data is sent to and from the mobile device. An access point provides a radio interface whereby a mobile device having a transceiver can access a network such as a service provider's network or a private network. An access point can be a cellular base transceiver station (BTS), Node B, or it would be any other means for accessing a network such as a Wireless LAN hotspot, femtocell, and equivalents thereof. For the purposes of this disclosure, a Node B is equivalent to a BTS, and an RNC is equivalent to a BSC.

For the following description, it can be assumed that most correspondingly labeled structures across the figures (e.g., 132 and 232, etc.) possess the same characteristics and are subject to the same structure and function. If there is a difference between correspondingly labeled elements that is not pointed out, and this difference results in a non-corresponding structure or function of an element for a particular embodiment, then that conflicting description given for that particular embodiment shall govern.

FIG. 1 shows a system for routing a data packet to a mobile device on a network, according to an exemplary embodiment of the present invention. In this embodiment, a mobile roams between WLAN hotspots and a UMTS network without losing a connection with the UMTS network. A Radio Network Controller (RNC) 100 on the UMTS network provides this seamless handover. A mobile device 130 may access the UMTS network via both Node Bs 120-121 and WLAN hotspots 127-128, with RNC 100 of the UMTS network maintaining a mapping table to locate the user and provide appropriate handoff. In this embodiment, the system includes a mobile switching center (MSC) 110, a serving GPRS support node (SGSN) 112, RNC 100 with a database 102, a first Node B 120, a second Node B 121, a first WLAN hotspot 126, a second WLAN hotspot 127, a third WLAN hotspot 128, a satellite network 118, a powerline network 114, an IP network 116, and a mobile device 130.

MSC 110 is responsible for routing voice calls and SMS as well as other services (such as conference calls, FAX and circuit switched data). MSC 110 sets up and releases the end-to-end connection, handles some mobility features and handover requirements during the call, and takes care of charging and real time pre-paid account monitoring. SGSN 112 is responsible for the delivery of data packets from and to the mobile devices within its geographical service area, and provides a link between IP networks and RNC 100. Tasks performed by SGSN 112 include packet routing and transfer, mobility management (attach/detach and location management), logical link management, and authentication and charging functions. RNC 100 is a governing element in the UMTS radio access network (UTRAN) and is responsible for controlling Node Bs that are connected to RNC 100. RNC 100 carries out radio resource management, some of the mobility management functions, and is the point where encryption is done before user data is sent to and from the mobile device. RNC 100 connects to the Circuit Switched Core Network through a Media Gateway and to SGSN 112 in the packet switched core UMTS network. Node Bs 120-121 are hardware elements on a mobile phone network that connect mobile devices to a cellular network such as the UMTS network. According to exemplary embodiments, each Node B 120, 121 includes a cabinet, an antenna mast, an antenna, power amplifiers, a digital signal processor, and a power source in order to transmit and receive signals with mobile devices. Each Node B is generally controlled by RNC 100. With the emergence of High Speed Downlink Packet Access (HSDPA), some logic may be handled on Node Bs 120, 121 for lower response times.

Similar to the Node Bs, WLAN hotspots 126-128 each communicate with RNC 100 and their operation is governed in part by RNC 100. RNC 100 is therefore able to track the movement of mobile device 130 based upon the WLAN hotspot or Node B that is providing radio access to mobile device 130. This allows RNC 100 to ensure that data is sent to the correct WLAN hotspot or Node B where a user of mobile device 130 is located. A network agent coupled to or incorporated within each access point (i.e. Node B or WLAN) reports its network location along with an IP address of mobile device 130 to RNC 100. This allows the RNC to enable seamless handovers between hotspots and towers, etc. while sending and receiving data. Notably, RNC 100 generates and maintains a mapping table to track mobile device 130. The mapping table includes the IP address of mobile device 130, a unique identifier of mobile device 130, such as a MAC address or IMEI, and the network location or address received from the access point. Routing logic within RNC 100 uses an algorithm to determine a correct or most efficient route for sending data to the user. When the user enters a new zone, and connects to the network via a WLAN hotspot or Node B, the network agent coupled to the access point notifies RNC 100 of the presence and identity of mobile device 130. RNC 100 updates the mapping table with the new location of the user. RNC 100 can further forward the most current address of the user to any network entity that is seeking to transmit a data packet to the mobile device 130. Instead of manually forwarding every data packet to device 130, notifying the sender of the data packet enables a more efficient means for routing the data packet to the end user.

As shown in FIG. 1, the access points may connect to RNC 100 through various means in order to communicate a location of mobile device 130. As shown, first WLAN hotspot 126 is in communication with RNC 100 through an IP network connection. This is the same or equivalent type of connection that connects first Node B 120 and second Node B 120 to RNC 100 as well. When mobile device 130 enters an area served by first WLAN hotspot 126, first WLAN hotspot 126 notifies RNC 100 over IP network 116. Second WLAN hotspot 127 connects to RNC 100 over a powerline network or powerline communication (PLC)—a method of carrying data on a conductor, where the conductor is also used for electronic power transmission. PLC network 114 uses a modulated carrier signal on the wiring system provided by a standard power grid, thereby reducing the infrastructure costs of setting up a new network. Typically, a transformer prevents a signal from propagating, so multiple PLC technologies may be bridged together to form a larger network. Different types of PLC use different frequency bands, depending upon the signal transmission characteristics of the power wiring used. Notably, the contents of the data packet are transparent to the operator of the powerline network. The data packet can only be accessed by the network layer, if preferred, thereby being viewable only when it is delivered to the UMTS network or to the mobile device. When mobile device 130 enters an area served by second WLAN hotspot 127, second WLAN hotspot 127 notifies RNC 100 over PLC network 114.

Third WLAN hotspot 128 connects to RNC 100 over a satellite connection 118. RNC 100 may include a satellite transceiver 106 to communicate with third WLAN hotspot 128 using satellite 118, or satellite 118 communicates with other network elements such as SGSN 112 in order to transmit location information to RNC 100. Satellite 118 contains one or more transponders, each transponder being a separate transceiver or repeater. Generally, these transponders relay what is received, with an amplification of the signal. When mobile device 130 enters an area served by third WLAN hotspot 128, third WLAN hotspot 128 notifies RNC 100 of the IP address of mobile device 130 as well as a network location of third WLAN hotspot 128 via satellite 118. RNC 100 adds the received network locations from first WLAN hotspot 126, second WLAN hotspot 127, third WLAN hotspot 128, first Node B 120, and second Node B 121, as well as any other notifications received, to form a mapping table of addresses for mobile device 130. RNC 100 then routes any data packets addresses to mobile device 130 using the last known network address received from one of the plurality of access points. This routing can take many forms, for instance, by forwarding the latest network address to a network entity that is transmitting the data packet, by notifying MSC 110 about the new routing, or by actually forwarding the data packet itself.

FIG. 2 shows a system for routing a data packet across a plurality of networks, according to an exemplary embodiment of the present invention. In this system, a mobile device is able to roam between WLAN hotspots and a UMTS network utilizing multiple RNCs, in this case, first RNC 200 and second RNC 201. Mapping of the location of a mobile device may be done on one or both of first RNC 200 and second RNC 201. First RNC 200 and second RNC 201 are in communication with each other across the UMTS network, such that one or more mapping tables include all WLAN hotspots and Node Bs in the network. Thus, mobile device 230 can travel to any of the areas 270, 272, and 274 covered by a WLAN hotspot or Node B, and remain connected to the network.

For instance, mobile device 230 is first connected to first Node B 220, and communicates across the UMTS network via first Node B 220. A mapping table stored on database 202 on first RNC 200 records this location in a record associated with a unique identifier and IP address of mobile device 230. Mobile device 230 then moves into an area 272 covered by second Node B 226. Although both access points 220 and 221 cover a portion of the same area, a handover procedure initiated by either mobile device 230 or RNC 200 causes the communication path to switch from first Node B 220 to second Node B 221. In either case, second Node B 221 registers mobile device 230 and notifies first RNC 200 of the registration. First RNC stores the new location of mobile device 230 in a mapping table record associated with a unique identifier of mobile device 230, as well as any handoff performed. This enables data first RNC 200 to route any data packets destined to mobile device 230 to traverse access point 221.

A portion of area 272 is also offered radio access by WLAN hotspot 226. When mobile device connects to first WLAN hotspot 226, first WLAN hotspot 226 notifies either or both of first RNC 200 and second RNC 201. This notification may occur over an IP network connection, over a PLC network, over a satellite connection, etc. First RNC 200 and/or second RNC 201 updates the mapping table stored on either or both of databases 202 and 203 to include the network address of first WLAN hotspot 226 in a record associated with mobile device 230. Routing logic on either first or second RNCs creates routing paths for data packets to be sent to mobile device 230 via first WLAN hotspot 226. Mobile device 230 further sends data packets to network entities via first WLAN hotspot 226. Further, switching between hotspot 226 and Node B 221 is possible so long as mobile device 230 stays within area 272. Any handoffs between second Node B 221 and first WLAN hotspot 226 are handled seamlessly by logic on any combination of mobile device 230 and first RNC 200, such that they may occur, for instance, in the middle of an upload, download, phone call, etc.

Next, mobile device 230 moves into an area covered by second WLAN hotspot 227 and only partially covered by first WLAN hotspot 226, such that the signal of second WLAN 227 is much stronger than that of first WLAN 226. Although this new area 274 is also served by second Node B 222, logic on either mobile device 230 or RNC 201 determines that the most appropriate access point is second WLAN 227. This may be because a signal from second Node B 222 is very weak or non-existent, for instance, in an office building. Second WLAN hotspot 227 registers mobile device 230 and notifies one or both of first RNC 200 and second RNC 201 of this registering, along with a network address or location of second WLAN hotspot 227. As with first WLAN hotspot 220, this notification may occur over an IP network connection, over a PLC network, over a satellite connection, etc. First RNC 200 and/or second RNC 201 updates the location of mobile device 230 in its mapping table. As second WLAN hotspot 227 has a stronger signal than first WLAN hotspot 226, logic on any one of or a combination of first RNC, second RNC, and mobile device determines that mobile device is to be handed off to second WLAN hotspot 227. Data packets sent from mobile device 230 are sent to the network via second WLAN hotspot 227. Data packets destined for mobile device 230 are routed through second WLAN hotspot 227.

Mobile device 230 then moves into an area covered by third Node B 222. When third Node B 222 registers mobile device 230, third Node B 222 notifies second RNC 201 of the new registration along with a network location of third Node B 222. Any handoff between second WLAN hotspot 227 and third Node B 222 may be seamless. Second RNC 201 and/or first RNC 200 updates the mapping table to denote the new location of mobile device. Data packets destined for mobile device 230 are now routed through third Node B 222.

FIG. 3 shows the components of a controller, according to an exemplary embodiment of the present invention. In this embodiment, a controller 300, such as an RNC or BTC, includes a routing logic 308 stored on a local memory (not shown) as well as a database 302 in communication with RNC 300. Besides being a governing element in the UMTS radio access network and responsible for controlling Node Bs and other access points that are connected to RNC 300, the logic 308 enables RNC 300 to generate and maintain a mapping table to track mobile devices traversing the several access points. The mapping table is stored on database 302, and includes the IP address of the mobile devices, a unique identifier of the mobile devices, such as a MAC address or IMEI, and the network location or address received from the several access points. Logic 308 within RNC 300 uses an algorithm to determine a correct or most efficient route for sending data to the user. When the user's mobile device enters a new zone, and connects to the network via a WLAN hotspot or Node B, a network agent coupled to the access point notifies RNC 100 of the presence and identity of the mobile device. Logic 308 updates the mapping table stored on database 302 with the new location of the user, and then forwards the most current address of the user to any network entity that is seeking to transmit a data packet to the mobile device.

FIGS. 4A and 4B respectively show the exterior and interior components of a mobile device 430, according to an exemplary embodiment of the present invention. According to this embodiment, mobile device 430 includes a speaker 432, a display 434, a keypad 436, a microphone 438, and an antenna 440. Mobile device 430 further includes a power supply 442, a central processing unit (CPU) 444, cellular transceiver 446, WLAN transceiver 447, and a memory 448. Memory 448 stores logic 449 for operating the components of mobile device 430.

Speaker 432 provides an output for mobile device 430. Display 434 is an LCD or LED or other type of display on which a user can view selections, numbers, letters, etc. Display 434 can also be a touchscreen, thereby being used as an input device. Keypad 436 is typically used as an input device, for instance, to type a phone number or a message. Keypad 436 may be a numerical keypad, a QWERTY keyboard, etc. The keypad may alternatively be implemented as touch sensitive areas on display 434. Microphone 438 allows the user to verbally communicate with others using mobile device 430. Antenna 440 is a transducer designed to transmit or receive electromagnetic waves to and from a network. In conjunction with antenna 440, transceivers 446 and 447 allow mobile device 430 to wirelessly communicate with a network, or with other wireless devices. In this embodiment, transceiver 446 communicates with a Node B or base station using cellular radio frequencies, for instance, UMTS or GSM. Transceiver 447 communicates with WLAN hotspots using Wi-Fi, WiMax, or equivalent radio frequencies. Power supply 442 provides power to each of the components of mobile device 430, and can include a battery, as well as an interface to an external power supply. CPU 444 controls components of mobile device 430 according to instructions in logic 449 stored on memory 448. Memory 448 comprises any computer readable medium, such as RAM, ROM, etc. Logic 449, at its minimum, enables operation of the components of mobile device 430 and to provide a user interface displayed on screen 434. Logic 219 can further include instructions to enable seamless handovers between different types of networks, for instance, by switching between transceivers 446 and 447. Other applications can be incorporated within logic 449.

FIG. 5 shows a method for routing a data packet to a mobile device on a network, according to an exemplary embodiment of the present invention. According to this embodiment, the method begins with a RNC storing (S560) an Internet Protocol (IP) address, a network location or a default network location for the mobile device on the network, and a unique identifier for the mobile device such as a EIN, IMEI, IMSI, MAC address, and combinations thereof. The default network location can be assigned by a user of the mobile device or by the network operator, and can be dependent on the user's home location, office location, etc. The IP address and location information are included (S560) in a mapping table used to determine appropriate routing for data packets going to and from the mobile device. When the mobile device moves across locations, the RNC receives (S562) the network location from a network agent in communication with an access point that provides network access to the mobile device. The network agent is co-located or coupled to the access point. For instance, the network agent is part of a WLAN hotspot, a Node B, a BTS, etc. The RNC updates (S564) the mapping table for the mobile device with the network location of the network agent, such that the mapping table is current. With the mapping table updated, the RNC receives (S566) a request from another network entity to transfer a data packet to the mobile device. The other network entity can be another mobile device, or an intermediary, such as a MSC, or via a gateway to an external network. The RNC routes (S568) the requested data packet to the mobile device according to the updated location information. This can happen in a number of ways, for instance, the RNC may forward the updated location to the external network entity. Alternatively the RNC instructs an MSC to forward the data packet to the access point providing the network access to the mobile device. Other methods for routing the data packet will become evident to one of ordinary skill in the art in light of this disclosure.

FIG. 6 shows an access point communicating with a controller across an IP network, according to an exemplary embodiment of the present invention. In this embodiment, access point 628 is a WLAN hotspot that is in communication with the UMTS network via an IP network 616. With mobile device 630 in an area served by WLAN hotspot 628, WLAN hotspot 628 notifies RNC 600 over IP network 616 about the presence of mobile device 630. The notification includes a network address or location of WLAN hotspot 628. RNC 600 adds the received network location from WLAN hotspot 628 to a mapping table of addresses for mobile device 630 stored in database 602. RNC 600 then routes any data packets addressed to mobile device 630 using the updated network address/location.

FIG. 7 shows an access point communicating with a controller across a powerline network, according to an exemplary embodiment of the present invention. WLAN hotspot 726 connects to RNC 700 over a powerline network 714. PLC network 714 carries data on a conductor also used for electronic power transmission. PLC network 714 uses a modulated carrier signal on the wiring system provided by a standard power grid. Multiple PLC technologies may be bridged together to form a larger network. When mobile device 730 enters an area served by WLAN hotspot 726, WLAN hotspot 726 notifies RNC 700 over PLC network 714 about the presence of mobile device 730. The notification includes a network address or location of WLAN hotspot 726. RNC 700 adds the received network location from WLAN hotspot 728 to a mapping table of addresses for mobile device 730 stored in database 702. RNC 700 then routes any data packets addressed to mobile device 730 using the updated network address/location. Data packets are then routed to mobile device 730 via hotspot 726, either via PLC network 714, or other available networks.

FIG. 8 shows an access point communicating with a controller across a satellite network, according to an exemplary embodiment of the present invention. WLAN hotspot 827 connects to RNC 800 over a satellite network 818. Satellite network uses a satellite containing one or more transponders, each transponder being a separate transceiver or repeater, to communicate signals between hotspot 827 and the core UMTS network. When mobile device 830 enters an area served by WLAN hotspot 827, WLAN hotspot 827 notifies RNC 800 over satellite network 818 about the presence of mobile device 830. The notification includes a network address or location of WLAN hotspot 826. RNC 800 adds the received network location from WLAN hotspot 827 to a mapping table of addresses for mobile device 830 stored in database 802. RNC 800 then routes any data packets addressed to mobile device 830 using the updated network address/location. Data packets are then routed to mobile device 830 via hotspot 826, either via satellite network 818, or other available networks.

The foregoing disclosure of the exemplary embodiments of the present invention has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many variations and modifications of the embodiments described herein will be apparent to one of ordinary skill in the art in light of the above disclosure. For instance, the data packet being routed can include voice, multimedia, or other information. The present invention can work in an IP Multimedia System (IMS) environment, using SIP addressing to maintain the mapping tables within the RNC. The scope of the invention is to be defined only by the claims appended hereto, and by their equivalents.

Further, in describing representative embodiments of the present invention, the specification may have presented the method and/or process of the present invention as a particular sequence of steps. However, to the extent that the method or process does not rely on the particular order of steps set forth herein, the method or process should not be limited to the particular sequence of steps described. As one of ordinary skill in the art would appreciate, other sequences of steps may be possible. Therefore, the particular order of the steps set forth in the specification should not be construed as limitations on the claims. In addition, the claims directed to the method and/or process of the present invention should not be limited to the performance of their steps in the order written, and one skilled in the art can readily appreciate that the sequences may be varied and still remain within the spirit and scope of the present invention. 

What is claimed is:
 1. A controller comprising: a processor; and a memory in communication with the processor, the memory including a database containing an internet protocol address associated with a corresponding mobile device, the memory further storing a routing logic that is executed by the processor to perform operations comprising: receiving a network location from a network agent in communication with the mobile device, updating the database with the network location, routing a data packet to the mobile device via the network location; and transmitting the network location to a source of the data packet.
 2. The controller of claim 1, wherein the controller is a radio network controller, and wherein the network agent is coupled to an access point enabling the mobile device to access the network.
 3. The controller of claim 2, wherein the access point is any one of a wireless local area network router and a Node B.
 4. The controller of claim 3, wherein the operations further comprise handover logic enabling a handover between the wireless local area network router and the Node B.
 5. The controller of claim 1, wherein the network is an internet protocol network, and wherein the network agent transmits the network location to the controller via the internet protocol network.
 6. The controller of claim 5, wherein the network location is transmitted via a serving GPRS support node.
 7. The controller of claim 5, wherein the database includes a mapping table including a plurality of internet protocol addresses for a corresponding plurality of mobile devices, the mapping table further including at least one additional identifier for each of the plurality of mobile devices.
 8. The controller of claim 1, wherein the network agent transmits the network location to the controller via a powerline network.
 9. The controller of claim 1, wherein the network agent transmits the network location to the controller via a satellite network.
 10. The controller of claim 1, wherein the operations further comprise transmitting the data packet to the mobile device.
 11. The controller of claim 1, wherein the controller is a base station controller.
 12. A system comprising: a radio network controller in communication with a plurality of access points including at least a Node B and a wireless local area network router, each of the plurality of access points being coupled to a network agent and a mobile device, the radio network controller further comprising a database of network addresses for the mobile device, the database including an internet protocol address of the mobile device, a unique identifier of the mobile device, and a network address of the one of the plurality of access points in communication with the mobile device, the network address being provided to the radio network controller from the network agent; and a computer-readable medium in communication with the radio network controller, the computer-readable medium storing routing logic that is executed by the radio network controller to perform operations comprising: updating the database with the network address received from the network agent, routing an incoming data packet to the mobile device based on the network address of the access point in communication with the mobile device, and transmitting the network address to a source of the data packet.
 13. The system of claim 12, wherein the access point is any one of a wireless local area network router and a Node B, the access point enabling the mobile device to access the network.
 14. The system of claim 12, wherein the network is an internet protocol network, and wherein the network agent transmits the network address to the controller via the internet protocol network.
 15. The system of claim 14, further comprising a serving GPRS support node in communication with the radio network controller, wherein the network address is transmitted to the radio network controller via the serving GPRS support node.
 16. The system of claim 12, wherein the network agent transmits the network address to the radio network controller via a powerline network.
 17. The system of claim 12, wherein the network agent transmits the network address to the radio network controller via a satellite network.
 18. A method comprising: storing, by a radio network controller comprising a processor, an internet protocol address and location information for a mobile device on the network; receiving, by the processor, a network location of the mobile device from a network agent in communication with the mobile device, the network agent being co-located with an access point providing a network access to the mobile device; updating, by the processor, the stored location information for the mobile device with the network location of the mobile device; receiving, by the processor, a request to transfer a data packet to the mobile device; routing, by the processor, the data packet to the mobile device via the updated location information; and forwarding, by the processor, the updated location information to a source of the data packet.
 19. The method of claim 18, further comprising forwarding the updated location information to a source of the request to transfer the data packet. 